﻿using Signit.Sdk.Entity;
using Signit.Sdk.Types;
using System.Collections.Generic;

namespace Signit.Sdk.Http.Enterprise
{
    /// <summary>
    /// 企业实名认证请求数据结构.
    /// </summary>
    public class EnterpriseVerifyRequest : AbstractSignitRequest
    {
        /// <summary>
        /// 待认证企业名称.
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 经办人信息.
        /// </summary>
        public EnterpriseAgent Agent { get; set; }

        /// <summary>
        /// 法人信息.
        /// </summary>
        public EnterpriseLegalPerson LegalPerson { get; set; }

        /// <summary>
        /// 统一社会信用代码.
        /// </summary>
        public string UnifiedSocialCode { get; set; }

        /// <summary>
        /// 营业执照照片信息.
        /// </summary>
        public IdCardImage BusinessLicenceImage { get; set; }

        /// <summary>
        /// 组织机构代码（已由“统一社会信用代码”替换）.
        /// </summary>
        public string OrgCode { get; set; }

        /// <summary>
        /// 组织机构代码证照片信息.
        /// </summary>
        public IdCardImage OrgImage { get; set; }

        /// <summary>
        /// 工商注册号（已由“统一社会信用代码”替换）.
        /// </summary>
        public string RegistCode { get; set; }

        /// <summary>
        /// LEGAL_PERSON-法人认证，AGENT-经办人认证.
        /// </summary>
        public EnterpriseAuthType AuthType { get; set; }

        /// <summary>
        /// 企业对公银行信息.
        /// </summary>
        public EnterpriseBankCardInfo BankCardInfo { get; set; }

        /// <summary>
        /// 额外认证所需照片信息数组.
        /// </summary>
        public IList<IdCardImage> ExtraAuthImages { get; set; }
    }
}